// ==========================================================================
// GFast自动生成api操作代码。
// 生成日期：2024-11-11 17:42:22
// 生成路径: api/v1/system/schools.go
// 生成人：王中阳
// desc:学校相关参数
// company:云南奇讯科技有限公司
// ==========================================================================

package system

import (
	"github.com/gogf/gf/v2/frame/g"
	"github.com/gogf/gf/v2/net/ghttp"
	commonApi "github.com/tiger1103/gfast/v3/api/v1/common"
	"github.com/tiger1103/gfast/v3/internal/app/system/model"
)

// SchoolsSearchReq 分页请求参数
type SchoolsSearchReq struct {
	g.Meta `path:"/list" tags:"学校" method:"get" summary:"学校信息表列表"`
	commonApi.Author
	model.SchoolsSearchReq
}

// SchoolsSearchRes 列表返回结果
type SchoolsSearchRes struct {
	g.Meta `mime:"application/json"`
	*model.SchoolsSearchRes
}

// SchoolsExportReq 导出请求
type SchoolsExportReq struct {
	g.Meta `path:"/export" tags:"学校" method:"get" summary:"学校信息表导出"`
	commonApi.Author
	model.SchoolsSearchReq
}

// SchoolsExportRes 导出响应
type SchoolsExportRes struct {
	commonApi.EmptyRes
}
type SchoolsExcelTemplateReq struct {
	g.Meta `path:"/excelTemplate" tags:"学校" method:"get" summary:"导出模板文件"`
	commonApi.Author
}
type SchoolsExcelTemplateRes struct {
	commonApi.EmptyRes
}
type SchoolsImportReq struct {
	g.Meta `path:"/import" tags:"学校" method:"post" summary:"学校信息表导入"`
	commonApi.Author
	File *ghttp.UploadFile `p:"file" type:"file" dc:"选择上传文件"  v:"required#上传文件必须"`
}
type SchoolsImportRes struct {
	commonApi.EmptyRes
}

// SchoolsAddReq 添加操作请求参数
type SchoolsAddReq struct {
	g.Meta `path:"/add" tags:"学校" method:"post" summary:"学校信息表添加"`
	commonApi.Author
	*model.SchoolsAddReq
}

// SchoolsAddRes 添加操作返回结果
type SchoolsAddRes struct {
	commonApi.EmptyRes
}

// SchoolsEditReq 修改操作请求参数
type SchoolsEditReq struct {
	g.Meta `path:"/edit" tags:"学校" method:"put" summary:"学校信息表修改"`
	commonApi.Author
	*model.SchoolsEditReq
}

// SchoolsEditRes 修改操作返回结果
type SchoolsEditRes struct {
	commonApi.EmptyRes
}

// SchoolsGetReq 获取一条数据请求
type SchoolsGetReq struct {
	g.Meta `path:"/get" tags:"学校" method:"get" summary:"获取学校信息表信息"`
	commonApi.Author
	Id int `p:"id" v:"required#主键必须"` //通过主键获取
}

// SchoolsGetRes 获取一条数据结果
type SchoolsGetRes struct {
	g.Meta `mime:"application/json"`
	*model.SchoolsInfoRes
}

// SchoolsDeleteReq 删除数据请求
type SchoolsDeleteReq struct {
	g.Meta `path:"/delete" tags:"学校" method:"delete" summary:"删除学校信息表"`
	commonApi.Author
	Ids []int `p:"ids" v:"required#主键必须"` //通过主键删除
}

// SchoolsDeleteRes 删除数据返回
type SchoolsDeleteRes struct {
	commonApi.EmptyRes
}
